約 4,580,300 件
https://w.atwiki.jp/kadosyii/pages/11.html
エラー java.lang.OutOfMemoryError PermGen space PermGen space(Permanent Generation space):Javaクラスとそのメタ情報が格納されるメモリ領域のこと クラスはロードされる時点でPermGen spaceに保存される。 クラスのインスタンスを格納するヒープ領域と違って、GCはPermGen spaceに保存された情報を回収しない。 そのため、たくさんのクラスがアプリにロードされる場合、PermGen spaceサイズを超えてしまうと、「java.lang.OutOfMemoryError PermGen space」を発生する。 →即ち、java.lang.OutOfMemoryError PermGen spaceを発生する原因は 1)JVMにロードされるクラスは多すぎる 2)PermGen spaceサイズは小さすぎる などが考えられる。 【解決方法】 1)できるだけロードするクラス(ダイナミック生成されるクラスも含む)を減らす ※Tomcatの場合、共有できるjarファイルを$TOMCAT_HOME/shared/libに移動することも一つの手。 2)PermGen spaceサイズを大きくする:MaxPermSizeオプション XX PermSize → Permanent領域初期使用量 XX MaxPermSize → Permanent領域最大使用量 ※設定例::-Xms256m -Xmx256m -XX MaxNewSize=256m -XX MaxPermSize=256m ※Tomcatの設定例: TOMCAT_HOME/bin/catalina.sh JAVA_OPTS="-server -XX PermSize=64M -XX MaxPermSize=128m Java VM オプション -Xloggc -Xloggc file_path Xloggc file タイムスタンプが付いたファイルにGCステータスのログを記録する -XX +PrintGCDetails Print more details at garbage collection. Manageable. (Introduced in 1.4.0.) -XX +PrintGCDateStamps Xloggc ./gc.log -XX +PrintGCDateStamps -XX +PrintGCDetails 出力結果 2012-02-21T23 24 35.564+0900 0.712 [GC [PSYoungGen 16448K- 2686K(19136K)] 16448K- 2906K(62848K), 0.0158370 secs] [Times user=0.03 sys=0.00, real=0.02 secs] 2012-02-21T23 24 35.981+0900 1.129 [GC [PSYoungGen 19109K- 2679K(35584K)] 19329K- 5567K(79296K), 0.0235950 secs] [Times user=0.03 sys=0.00, real=0.03 secs] 2012-02-21T23 24 37.045+0900 2.192 [GC [PSYoungGen 35575K- 2678K(35584K)] 38463K- 15244K(79296K), 0.0277780 secs] [Times user=0.04 sys=0.00, real=0.02 secs] 2012-02-21T23 24 37.276+0900 2.424 [GC [PSYoungGen 10039K- 2678K(68480K)] 22606K- 17616K(112192K), 0.0168570 secs]
https://w.atwiki.jp/chapati4it/pages/132.html
Tomcat Tomcatは、「JSP/サーブレット」に対応したアプリケーションサーバです。サーブレットコンテナとも呼ばれます。 webサーバとしての機能もあるので、単独でwebサーバとしてもアプリケーションサーバとしても運用可能です。 ※開発ではTomcat単体で、実際の運用ではApatchなどのwebサーバと組み合わせての運用が一般的みたいです。 Tomcatサンプル Tomcatメモ Tomcat7.0.37のインストールとeclipseの設定(Windows) サーブレットを作ってみる Tomcat7のインストールとwarファイルのデプロイ(ubunts12.04) warファイルをdotcloudにデプロイ サーブレットからJSPに遷移するサンプル サーブレットからCSVファイルをダウンロードするサンプル サーブレットからCSVファイルをダウンロードするサンプル(日本語ファイル名) サーブレットからファイルをダウンロードするサンプル(日本語ファイル名) Basic認証(UserDatabaseRealm)+DIGEST認証 JFreeChartで動的にグラフを出力するサンプル ファイルをアップロードするサンプル(Commons FileUplaod) クロスサイトスクリプティング脆弱性を体験してみるサンプル
https://w.atwiki.jp/naobe/pages/42.html
OpenSourceに戻る バージョンと標準 Tomcatバージョン servlet jsp 6.0 2.4 2.0 5.5 2.3 2.0 ソースプログラム http //tomcat.apache.org/download-60.cgi Tomcat6.0.3.5ソース解読 苦労しました。大筋は合っていると思う。 Tomcat解読.xls 起動 Bootstrap#startからCatalina#startを呼び出す。Server#startを実行し、Server.xmlで設定したポート番号でsocketのstreamからreadする。readした文字が"SHUTDOWN"なら停止処理を実行する。 server.xmlからデフォルトのポート番号は、8005になる。 Server port="8005" shutdown="SHUTDOWN" public class Catalina extends Embedded { public void start() { ((Lifecycle) getServer()).start(); if (await) { await(); stop(); } public void await() { getServer().await(); } public final class StandardServer public void await() { awaitSocket = new ServerSocket(port, 1, InetAddress.getByName("localhost")); while (!stopAwait) { ServerSocket serverSocket = awaitSocket; Socket socket = null; StringBuilder command = new StringBuilder(); try { InputStream stream = null; socket = serverSocket.accept(); socket.setSoTimeout(10 * 1000); // Ten seconds stream = socket.getInputStream(); // Read a set of characters from the socket int expected = 1024; // Cut off to avoid DoS attack while (expected shutdown.length()) { if (random == null) random = new Random(); expected += (random.nextInt() % 1024); } while (expected 0) { int ch = -1; try { ch = stream.read(); } catch (IOException e) { log.warn("StandardServer.await read ", e); ch = -1; } if (ch 32) // Control character or EOF terminates loop break; command.append((char) ch); expected--; } // Match against our command string boolean match = command.toString().equals(shutdown); if (match) { break; } } 停止 Bootstrap#stopServerからCatalina#stopServerを呼び出す。 ソースは以下になっている。Serverのポート番号からソケットを作成して、"SHUTDOWN"という文字を送信している。 public class Catalina extends Embedded { public void stopServer(String[] arguments) { ・・・・ s = getServer(); try { if (s.getPort() 0) { String hostAddress = InetAddress.getByName("localhost").getHostAddress(); Socket socket = new Socket(hostAddress, getServer().getPort()); OutputStream stream = socket.getOutputStream(); String shutdown = s.getShutdown();// "SHUTDOWN" for (int i = 0; i shutdown.length(); i++) stream.write(shutdown.charAt(i)); stream.flush(); stream.close(); socket.close(); } else { log.error(sm.getString("catalina.stopServer")); System.exit(1); } } catch (IOException e) { log.error("Catalina.stop ", e); System.exit(1); } レルム レルムとは、ユーザ、パスワード、ロールをまとめたもの。ユーザDBのエントリに相当する。UserDatabaseRealm、JDBCレルム、DataSourceレルム、JNDIレルムがある。web.xmlのセキュリティ設定で制限されたURLをアクセスするときに認証するためのユーザ、パスワード、ロールを定義したもの。web.xmlでは、URLとHTTPメソッドに対してロールを割り当てる。 UserDatabaseRealm JNDIを介してアクセスするがデフォルトでは$CATALINA_BASE/conf/tomcat-user.xmlを使う。 $CATALINA_BASE/conf/server.xmlに以下を設定する。 Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/ Engine 直下に設定すると、Tomcat内の全ての仮想ホストで共通の設定になる Host 直下に設定すると、仮想ホスト内で共通の設定になる。 Context 直下に設定すると、WEBアプリケーション内で共通の設定になる。 web.xmlで制限をかけたURLにアクセスすると、認証(BASIC,DIGEST,FORM)を行う。 認証に成功すると、ユーザを内部に保管して、指定したURLに移動する。 BASIC認証の場合は、ブラウザを閉じる(TCPコネクションclose ?)までユーザをキャッシュする(認証を行わない)。 FORM認証の場合は、セッションタイムアウトになるまでユーザをキャッシュする。キャッシュされたユーザはセッションの直列化をまたがって保存されない(APサーバ停止によるセッションの保管のことでしょう)。 tomcat-users.xmlの設定例 tomcat-users user name="tomcat" password="tomcat" roles="tomcat" / user name="role1" password="tomcat" roles="role1" / user name="both" password="tomcat" roles="tomcat,role1" / /tomcat-users データソース Tomcat6.Xの内部データソースは、org.apache.tomcat.dbcp.dbcp.BasicDataSource。これは、org.apache.commons.dbcp.BasicDataSourceと同じもの。 http //www.flsi.co.jp/Java_text/vol140.htm 参照 設定 項目 内容 親を優先とするクラスローダの移譲 web.xmlのcontextのdelegate属性にtrueを設定する セッションタイムアウト conf/web.xmlのsession-configタグを修正するとすべてのWEBアプリケーションに影響する。WEBアプリケーションのweb.xmlを修正すると、WEBアプリケーションのみ影響する。単位は分。 サーバ化 【参考】 http //miyazaki.ddo.jp/linuxserver/tomcatautostart.html http //www.atmarkit.co.jp/fjava/rensai4/safetomcat_01/safetomcat_01_1.html 【環境】 tomcat バージョン:6.0 OS CentOS 5.5 専用ユーザ作成 #adduser -d tomcatインストールディレクトリ -s /sbin/nologin tomcat 所有者の変更 #chown -R tomcat tomcatインストールディレクトリ #chmod -R g-r,g-w,g-x tomcatインストールディレクトリ JAVA_HOME設定 $TOMCAT_INSTALL/binsetenv.shに以下を設定 JAVA_HOME=JAVAホームディレクトリ JRE_HOME=JAVAホームディレクトリ commons-daemon commons-daemon概要 Javaは、signalに対応していないため、サーバの急なシャットダウンなどのタイミングでサーバリソース(TCP接続、DBとのコネクションなど)の正規の終結処理ができない。CとJavaを組み合わせてこれに対応したもの。UNIXとWindowsで異なるモジュールを提供する。UNIX版は、jsvc。 commons-daemonのインストール http //commons.apache.org/daemon/download_daemon.cgi から以下をダウンロード commons-daemon-1.0.5-src.tar.gz commons-daemon-1.0.5.jar commons-daemon-1.0.5-src.tar.gzを展開し以下を実行。 [hoge@athlon4 tmp]$ cd commons-daemon-1.0.5-src [hoge@athlon4 commons-daemon-1.0.5-src]$ cd src/ [hoge@athlon4 src]$ cd native/ [hoge@athlon4 native]$ cd unix/ [hoge@athlon4 unix]$ sh support/buildconf.sh [hoge@athlon4 unix]$ ./configure *** Current host *** checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking cached host system type... ok *** C-Language compilation tools *** checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for ranlib... ranlib checking for strip... strip *** Host support *** checking C flags dependant on host system type... ok *** Java compilation tools *** checking for sablevm... NONE checking for kaffe... NONE checking for javac... /usr/java/jdk1.6.0_21/bin/javac /usr/java/jdk1.6.0_21/bin/javac checking wether the Java compiler (/usr/java/jdk1.6.0_21/bin/javac) works... yes checking for jar... /usr/java/jdk1.6.0_21/bin/jar gcc flags added checking for cap_init in -lcap... yes *** Writing output files *** configure creating ./config.status config.status creating Makefile config.status creating Makedefs config.status creating native/Makefile *** All done *** Now you can issue "make" [hoge@athlon4 unix]$ make clean (cd native; make clean) make[1] ディレクトリ `/home/hoge/tmp/commons-daemon-1.0.5-src/src/native/unix/native に入ります rm -f arguments.o debug.o dso-dlfcn.o dso-dyld.o help.o home.o java.o location.o replace.o locks.o signals.o ../jsvc jsvc-unix.o libservice.a make[1] ディレクトリ `/home/hoge/tmp/commons-daemon-1.0.5-src/src/native/unix/native から出ます [hoge@athlon4 unix]$ make (cd native; make all) make[1] ディレクトリ `/home/hoge/tmp/commons-daemon-1.0.5-src/src/native/unix/native に入ります gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c jsvc-unix.c -o jsvc-unix.o gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c arguments.c -o arguments.o gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c debug.c -o debug.o gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c dso-dlfcn.c -o dso-dlfcn.o gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c dso-dyld.c -o dso-dyld.o gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c help.c -o help.o gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c home.c -o home.o gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c java.c -o java.o gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c location.c -o location.o gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c replace.c -o replace.o gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c locks.c -o locks.o gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"i386\" -Wall -Wstrict-prototypes -DHAVE_LIBCAP -I/usr/java/jdk1.6.0_21/include -I/usr/java/jdk1.6.0_21/include/linux -c signals.c -o signals.o ar cr libservice.a arguments.o debug.o dso-dlfcn.o dso-dyld.o help.o home.o java.o location.o replace.o locks.o signals.o ranlib libservice.a gcc jsvc-unix.o libservice.a -ldl -lpthread -lcap -o ../jsvc make[1] ディレクトリ `/home/hoge/tmp/commons-daemon-1.0.5-src/src/native/unix/native から出ます [hoge@athlon4 unix]$ 作成されたjsvcのownerをtomcatに修正して${TOMCAT_HOME}/binにコピー /etc/init.dに起動スクリプト作成 # # source function # . /etc/init.d/functions # # That is for Tomcat-5.0.x (Apache Tomcat/5.0) # # Adapt the following lines to your configuration JAVA_HOME=/usr/java/jdk1.6.0_21 CATALINA_HOME=/opt/apache-tomcat-6.0.29 TOMCAT_USER=tomcat # for multi instances adapt those lines. TMP_DIR=/tmp PID_FILE=/var/run/jsvc.pid LOCKFILE=/var/lock/subsys/tomcat CATALINA_BASE=$CATALINA_HOME CATALINA_OPTS= CLASSPATH=\ $JAVA_HOME/lib/tools.jar \ #$CATALINA_HOME/bin/commons-daemon.jar \ $CATALINA_HOME/bin/commons-daemon-1.0.5.jar \ $CATALINA_HOME/bin/bootstrap.jar case "$1" in start) echo -n "Starting jsvc " # # Start Tomcat # $CATALINA_HOME/bin/jsvc \ -user $TOMCAT_USER \ -home $JAVA_HOME \ -Dcatalina.home=$CATALINA_HOME \ -Dcatalina.base=$CATALINA_BASE \ -Djava.io.tmpdir=$TMP_DIR \ -wait 10 \ -pidfile $PID_FILE \ -outfile $CATALINA_HOME/logs/catalina.out \ -errfile 1 \ $CATALINA_OPTS \ -cp $CLASSPATH \ org.apache.catalina.startup.Bootstrap # # To get a verbose JVM #-verbose \ # To get a debug of jsvc. #-debug \ RETVAL=$? if [ $RETVAL = 0 ]; then echo_success touch $LOCKFILE else echo_failure fi echo ;; stop) # # Stop Tomcat # $CATALINA_HOME/bin/jsvc \ -stop \ -pidfile $PID_FILE \ org.apache.catalina.startup.Bootstrap RETVAL=$? if [ $RETVAL = 0 ]; then echo_success rm -f $PIDFILE $LOCKFILE else echo_failure fi echo ;; *) echo "Usage tomcat start/stop" exit 1;; esac プロセス 上記の設定でjsvcを起動すると、オーナがrootのプロセスとtomcatのプロセスが常駐する。指定のポート番号をlistenしているのは、tomcatのプロセス。 Tomcatのクラスローダ 以下、Tomcat6の場合。 クラスローダ 対象ロケーション 説明 WEBアプリケーション WEB-INF/classes,WEB-INF/lib 他のWEBアプリケーションからは使われないクラスローダ Shared tomcat /shared/lib, tomcat /shared/lib/*.jar。 tomcat /conf/catalina.propertiesのshared.loaderに設定する。設定がなければcommonローダと同じ。 WEBアプリケーションが共用するクラスローダ Catalina tomcat /conf/catalina.propertiesのserver.loaderに設定。設定がなければcommonローダと同じ。 Tomatの実行に使用される。WEBアプリケーションから使えないクラスローダ common tomcat /lib, tomcat /lib/*.jar tomcat /conf/catalina.propertiesのcommon.loaderに設定されている。 TomcatとWEBアプリケーションの両方から使われるクラスローダ 委譲の優先順位 ブートストラップ・クラスローダ システム・クラスローダ Webアプリケーション自身のクラスローダ Commonクラスローダ Sharedクラスローダ WEBアプリケーション Tomcat /webapps下にディレクトリを作成すると、そのディレクトリ名のWEBアプリケーション(コンテキストパスがディレクトリ名)が追加される。 任意のディレクトリをWEBアプリケーションに追加するには、conf/server.xmlに以下を設定。 Server Service Engine Host Context path="/naobe" docBase="c /webapps/naobe" debug="0" reloadable="true" /Context c /webapps/naobe以下のディレクトリ構成は以下。 WEB-INF +-- web.xml +-- classes | +-- パッケージ、クラスファイル +-- lib docBaseは、Tomcatインストールディレクトリからの相対ディレクトリも指定可能。 http //localhost 8080/naobeでWEBアプリケーションを参照できる。
https://w.atwiki.jp/ku240/pages/16.html
一言 のんびり,のんびり,ね. EclipseでQualnetを使えるようにする 以下より転載. http //www.scalable-networks.com/boards/viewtopic.php?f=48 t=5346 おいおい,翻訳や追加説明,注意書きを加える予定. How to debug QualNet? using Eclipse CDT in Ubuntu Linux Hello all, I have searched the forums for some linux equivalent to compiling QualNet? under Visual Studio in Windows and have found no such information. Therefore I have come up with a small tutorial for those interested in using Eclipse IDE forC/C++ Developers as a visual environment for compiling QualNet? under Linux. This has been tested under Ubuntu 8.04 with gcc version 4.2.4 and Eclipse platform version 3.6.0 1. Compiling QualNet? in Eclipse This assumes g++, gcc and eclipse properly installed and working. For installing Eclipse visit http //www.eclipse.org. 1.1. Configuring Eclipse CDT 1. Using a text editor, create a file named Makefile in the $QUALNET_HOME directory. This file contains commands to redirect to a makefile in $QUALNET_HOME/main. (The indentations in the following file are tabs, not spaces.) • Makefile should contain the following lines all cd main; make -f Makefile-linux-glibc-glibcver-gcc-gccver clean cd main; make clean -f Makefile-linux-glibc-glibcver-gcc-gccver where glibcver and gccver are the glibc and gcc version of your Linux distribution (see Section 2.3 of the QualNet? 5.0.2 Programmers’ Guide about Compiling QualNet? in Linux) 2. Open Eclipse 3. If prompt pops up asking you to choose workspace you can choose whatever workspace desired 4. Select File New Project C/C++ C++ Project. Then click Next 5. Uncheck Use Default Location then enter the following information • Project Name qualnet • Location /home/username/snt/qualnet/5.0 (if installed elsewhere then change accordingly) • Project Type Makefile Project Empty Project • Toolchains Linux GCC 6. Click Finish 1.2. Compiling QualNet? from Eclipse CDT Once Eclipse CDT has been configured, it can be used as follows • To build QualNet? select Project Build Project • To clean the object files and rebuild QualNet? select Project Clean..., then select Clean projects selected below and check qualnet. Then check Start a build immediately and select Build only the selected projects. Finaly press OK • To clean the object files select Project Clean..., then select Clean projects selected below and check qualnet. Make sure Start a build immediately is unchecked and press OK 2. Debugging QualNet? with Eclipse The CDT s extensibility allows you to connect its graphical debugging capabilities to your custom debugger, in this case gdb. To run the debugger on UNIX systems, QualNet? must be compiled with the debug option. See Section 2.7.2 of the QualNet? 5.0.2 Programmers’ Guide about debugging QualNet? in Linux 1. Go to Run Debug Configurations 2. Right click on C/C++ Applications, and then choose New. This should create a new debug configuration with the name qualnet Default. 3. In the Main tab type the following settings • C/C++ Application bin/qualnet • Project qualnet 4. In the Arguments tab type the following • Program arguments the name of the .config file of the scenario to debug • Working directory the name of the directory the scenario to debug is located in (uncheck Use default) 5. In the Debugger tab the following should already exist • GDB debugger gdb • GDB command file .gdbinit Make sure Stop at startup at main is unchecked 6. Now you can set the breakpoints as desired and debug by choosing Debug from the Run menu Attached you will find a pdf file with the tutorial which includes pictures. I am sure this can work on other distributions too. Hope this helps anyone interested. +追記:デバッグの設定をするときにEnviromentにQUALNET_HOMEを追加しないといけません.お忘れなく +追記:うろ覚えですが,makeファイルの最適化オプションに注意.最適化をなしにしないとデバッグ時に見れないパラメータがある.
https://w.atwiki.jp/cappu/pages/32.html
Eclipse 4 (e4) プロジェクトホーム http //www.eclipse.org/e4/ EMFでApplication modelが定義されているよう http //download.eclipse.org/e4/downloads/drops/S-0.9M1-200902061045/e4-news-M1.html #以下ダウンロード実行しても確認できず e4 0.9 M1 (February 9, 2009) ダウンロード http //download.eclipse.org/e4/downloads/ インストール Eclipse SDK 3.5M4 http //download.eclipse.org/eclipse/downloads/drops/S-3.5M4-200812111908/ e4 0.9 M1 http //download.eclipse.org/e4/downloads/drops/S-0.9M1-200902061045/index.html EMF Build 2.5.0/S200812151800 http //download.eclipse.org/modeling/emf/emf/downloads/drops/2.5.0/S200812151800/ GEF Build 3.5.0/S200812171720 http //download.eclipse.org/tools/gef/downloads/drops/3.5.0/S200812171720/ WST SDK S-3.1M4-20081219210304 http //download.eclipse.org/webtools/downloads/drops/R3.1/S-3.1M4-20081219210304/ ワークスペース リソースの取得方法 EclipseRCPで常駐アプリを作る方法 外部アプリケーションの起動 Javaオブジェクト永続化方法 JavaオブジェクトをHttpポストで送信する方法 RMIを用いたプロセス間通信サンプル フラグの作成方法 クラスからリソースのありかを探す方法 JDTのデバッグ機能の調査 Socketサンプル Integer ⇔ 255,255,255 java.lang.OutOfMemoryError PermGen space SWTで画面の外にウィンドウが出た場合に位置を修正する方法 Draw2Dの使い方1 RCPでViewのタブを斜めにする方法 エディタでpopupメニューをプラグインを使って外部公開した場合に、意図しない他のメニューまで出てしまう現象の回避方法 Common Navigator ブロードキャスト的にセレクションさせる方法 コマンドフレームワーク(コマンド、ハンドラ、メニュー、キーバインド関連) カラー 16進表記のカラー文字列←→RGB int 変換 int ←→ RGB int 変換(GMF) EMF Ecoreクラス図 気になるクラス org.eclipse.core.internal.resources.DelayedSnapshotJob
https://w.atwiki.jp/wiki7_az/pages/24.html
Windows Tomcat をダウンロードする。 ダウンロードした jakarta-tomcat-5.0.28.exe を実行して、Tomcat をインストールする。パスワードの入力以外はデフォルトのままで進む。 インストールディレクトリの tomcat5.exe を実行して、起動する。 Linux J2SE v 1.4.2_11 SDK をダウンロードする。 JDK をインストールする。 $ chmod 755 j2sdk-1_4_2_11-linux-i586-rpm.bin $ ./j2sdk-1_4_2_11-linux-i586-rpm.bin # rpm -ivh j2sdk-1_4_2_11-linux-i586.rpm Tomcat をダウンロードする。 Tomcat をインストールする。 $ tar xfvzp jakarta-tomcat-5.0.28.tar.gz # mv jakarta-tomcat-5.0.28 /usr/local/tomcat-5.0.28 # ln -s /usr/local/tomcat-5.0.28 /usr/local/tomcat # useradd -d /var/empty/tomcat -s /sbin/nologin tomcat # chown -R tomcat tomcat /usr/local/tomcat-5.0.28 起動スクリプトを作成する # vi /etc/init.d/tomcat #!/bin/sh # Startup script for Tomcat5.5 # # chkconfig 2345 80 15 # description Tomcat5.5 # Settings test -r /etc/rc.d/init.d/functions . /etc/rc.d/init.d/functions CATALINA_HOME=/usr/local/tomcat # Scripts case "$1" in start) echo "Tomcat start..." $CATALINA_HOME/bin/startup.sh if [ $? = 0 ] ; then echo_success else echo_failure fi echo ;; stop) echo "Tomcat stop..." $CATALINA_HOME/bin/shutdown.sh if [ $? = 0 ] ; then echo_success else echo_failure fi echo ;; restart) $0 stop $APACHE stop $0 start $APACHE start ;; reload) $0 stop $0 start ;; version) $CATALINA_HOME/bin/catalina.sh version ;; *) echo "Usage tomcat {start|stop|restart|reload|version}" exit 1 esac exit 0 # chmod 755 /etc/init.d/tomcat # chkconfig --add tomcat # chkconfig tomcat on catalina.sh を編集する。 # vi /usr/local/tomcat/bin/catalina.sh CATALINA_HOME=/usr/local/tomcat CATALINA_BASE=$CATALINA_HOME CATALINA_TMPDIR=$CATALINA_HOME/temp JAVA_HOME=/usr/java/j2sdk1.4.2_11 JRE_HOME=$JAVA_HOME
https://w.atwiki.jp/anthony/pages/19.html
Eclipseプラグイン Java Eclipse Plugin Project. (Jeextension) 私が開発したEclipseプラグインが公開されています。 公開しているプラグインは現在のところ4つです。 Eclipse JspC Plug-in. Tomcat 付属の Jasper を使用して JSP を事前コンパイルします。JSP を事前にコンパイルすることで、ブレークポイントの設定や文字化けの確認などが容易になります。Shift_JIS に対するコード・ページを明示的に設定できる点がオリジナルの Jasper で JSP コンパイルする時と違います。Eclipse3.2.1で動作確認済み Eclipse Classpath Update Plug-in. Javaプロジェクトのソースフォルダ、出力フォルダ、参照ライブラリやリンクフォルダなどを予め定義し、その定義ファイルを参照することでプロジェクトの右クリックで表示されるコンテキスト・メニューからプロジェクト設定を簡単に更新できまるようになります。チーム開発環境においてプロジェクト設定ファイルをリモートに配置し、一括で各開発者の設定を更新する際に利用する目的で開発されました。Eclipse3.2.1で動作確認済み SWT Control Chars Symbols Plug-in. SWT の StyledText を拡張するプラグインです。制御文字である改行・タブ・EOFと全角スペースの表示・非表示を制御できます。Eclipse 2.1.2、2.1.3 でのみ動作します。開発生産性を向上させるために Eclipse 標準エディターに無い機能であったため開発されました。Eclipse3.0系での対応予定はありません。 Jeex Style Editor Plug-in. コメント・ブロックやコメント行やキーワードを色付けして表示するエディター・プラグインです。文字列を色分けすることで開発生産性を向上させます。それぞれ拡張子を追加し、文字列のパーティションやキーワードに対して表示色を定義していくことができます。v1.2.0よりEclipse3.0系に対応しました。v1.3.0より正規表現に対応しました。v1.4.0より背景色、斜体、太字、取り消し線、下線が指定できるようになりました。 最終更新日:2007-05-02
https://w.atwiki.jp/kishiku/pages/15.html
Eclipse ダウンロード ここから最新版を取得 zipを解凍 日本語化 ここから安定版のPleiadesを取得 zipを解凍し、featuresとpluginsフォルダをeclipseのフォルダに上書き eclipseiniの編集 eclipse.iniのバックアップを作成 eclipse.iniの以下の感じにして、eclipse.exe -cleanコマンドを実行し、eclipseを起動 -Xms40m⇒-Xms512m -Xmx384m⇒-Xmx1024m ※上記2か所は人それぞれ。パソコンのスペックにもよるかと。 -vmを指定する。-vmargsより上に以下の定義を追加する。 C \Program Files\Java\jdk1.6.0_30\bin\javaw.exe(※インストールしたディレクトリを指定) 日本語化するには、最後の行に以下を追加する。 -javaagent plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar プラグイン Android Plugin http //dl-ssl.google.com/android/eclipse/ FindBugs http //findbugs.cs.umd.edu/eclipse CheckStyle http //eclipse-cs.sourceforge.net/update プロパティエディタ http //propedit.sourceforge.jp/eclipse/updates/ http //senpai4.blog29.fc2.com/blog-entry-452.html http //www.so-net.ne.jp/blog/sitetour/atom_api_spec.html#head-a030ea63b0300b19ab6a28fbd8bb72665a5389bc
https://w.atwiki.jp/dotcom/pages/132.html
Eclipseを使うためにしたことメモ。 目次 目次 環境 DL元 設定した内容ワークスペースの設定時の注意 Eclipseってなによ名前について どんなもの? なににつかうの? ちなみにAllinOneについて バージョン JREについて 重い 環境 Eclipse3.1 (AllinOne DL元 Eclipse: http //www.eclipse.org/downloads/index.php AllInOne: All-In-One Eclipse AllInOneだと日本語パッチとかもはいってるからそれだけいれちゃえばすぐ使えるです。 JDKとかは別だけど。 設定した内容 workspace C \Documents and Settings\dotcom\workspace\ 何も考えずに入れたらログインアカウントのDocuments and Settingsにはいっちゃった。 これが運の尽きだったことに気づいたのはかなり経ってから。。。 ワークスペースの設定時の注意 http //www.searchman.info/java_eclipse/1070.html ディレクトリの名前にspaceや全角の文字を入れない。 つまり、やらないとは思うけれど「Program File」の下なんかに作っちゃいけないってことだ。 今後TomcatやAntCVS等を使うならば、このEclipseのworkspaceの場所はかなり使います。 環境変数設定したりはしますが、それでもDocument and Settingsなんかに作るといろいろタイヘン。 分かりやすい場所に作っておくのが吉です。 Eclipseってなによ 名前について えくりぷす。 Sun社にけんか売ってるようなお名前ね。 どんなもの? 開発支援ツール。無料。Javaでできてます。 動かすにはJREが必要。 プラグインを増やせばかなりのことができます。 なににつかうの? 私はJava開発、HTMLエディタ、Antでインテグ環境作成、CVSクライアント なんてことに使っちゃおうと思ってます。 ちなみに AllinOneについて 必要そうなプラグインと日本語化パッチが入ってます。展開するだけでその環境ですぐ使えるすぐれもの。 ※Junit・Tomcatは入ってなかったです。 これを入れたので、どれが標準装備だったのかいまいちわからず。 しかも実は最新版が3.2だった時に3.1を入れました。 これはAllinOneが3.1までしかなかったから。 AllinOneのいいところは日本語パッチも入ってて、展開するだけですぐ使えたというところ。 開発環境が決まっていなくて、3.1でもできるならばまずこれで手慣らしするのもよいかもです。 バージョン バージョンが違うと画面もぜんぜん違いました。常に進化し続けるのね。。。って前とまったく違うんじゃ困るんだけど。。。 なので自分の使うバージョンで説明しているサイトを探してください。 JREについて 私はJava開発のためにいれたので、JREが入ってるJDKだけを入れてたのでJREというのもをよくわかってなかったです。 重い Eclipseはとにかく重いです。 重量じゃないです目に見えないんだから。 Javaのデバックなんて起動するとCPUの占有率が異常に高いです。びっくりです。 しかもメモリ使用量がはげしいです。 メモリについては使用量を調節する機能があるらしいです。 とりあえず1Gくらいあればなんとかなりそう。 でも予約語とかの候補出す度に一瞬固まるの、あれちょと切ないです。
https://w.atwiki.jp/installmaniax3/pages/89.html
Eclipse Memo Eclipseで使用するメモリーを増やす(Windows) eclipse.exe -vm "%JAVA_HOME%\bin\javaw.exe" -vmargs -Xmx512M Eclipseで使用するメモリーを増やす(Mac) Eclipse.app/Contents/MacOS/eclipse.ini を修正 (Aptanaの場合は、AptanaStudio3.app/Contents/MacOS/AptanaStudio3.ini 自動コンパイルを停止 「Window」- 「Preferences」- 「General」 - 「Workspace」- 「Build automatically」のチェックを外します。